Шаг 10 - Создаем сервер

Загрузить проект

Общий вид программы такой

void main()
{
    
    LANA_ENUM   lenum;
       
	if (ResetNetBios(LANA_NUM)!=NRC_GOODRET) printf("Error Reset \n");
	else printf("God Reset\n");

   	if (AddNetBiosName(LANA_NUM,SERVER_NAME)!=NRC_GOODRET)
	   printf("Error Add \n");
	else
	   printf("God Add Name\n");
	Proccess();
    
}
Инициализируем NetBios. Добавляем имя и запускаем процедуру Proccess:
void Proccess()
{
    NCB     ncb;
    UCHAR   ucRetCode;
    ClearStruct(&ncb);
    FillMemory(ncb.ncb_name, sizeof(ncb.ncb_name), ' ');
    CopyMemory(ncb.ncb_name, SERVER_NAME, strlen(SERVER_NAME));
    FillMemory(ncb.ncb_callname, sizeof(ncb.ncb_callname), ' ');
    CopyMemory(ncb.ncb_callname, ALL_CLIENTS, strlen(ALL_CLIENTS));
    ncb.ncb_lana_num = LANA_NUM;
    ncb.ncb_command = NCBLISTEN;
    ucRetCode = Netbios(&ncb);
    if (ucRetCode != NRC_GOODRET) 	printf("Error Listen\n");
	else printf("Gonnect !!!!!\n");
}
Посмотрите она ужастно простая. ncb.ncb_name - имя сервера; в ncb.ncb_callname - имя клиента. Имя клиента у меня такое.
#define ALL_CLIENTS    "*               "
Это значит, что могут подсоединяться все. NCBLISTEN будет ждать обращения. И после этого по результату работы NetBios выдаст сообщение.

Загрузите и скомпилируйте проект. Запустите сервер. Будет просто окно, которое будет ждать. А потом запустите клиента, сервер среагирует и завершит работу !!!!. Примерно должно быть так.

10_1.gif (1914 b)

Hosted by uCoz